const fs = require("fs")

function getFileByPath(fpath){
    return new Promise(function(resolve,reject){

        fs.readFile(fpath,'utf-8',(err,data)=>{//读取文件开始
            if(err) return reject(err)//错误就返回错误，同时结束调用，正确就跳过
            resolve(data)//成功之后要做地事情
        })//读取文件结束

    })
}




// 需求 2 ： 如果 1 失败，之后的2，3 也就没有继续执行的需要，也将终止程序的执行
//           但是2出错，1可以输出结果，而3 不执行
getFileByPath('./files/1.txt')

    .then(function(data){
        var data2 = data//这里可以说拿到这个数据了
        console.log(data2)
        return getFileByPath("./files/22.txt")
    })

    .then(function(data){//接着上一步return出来的结果进行.then操作
        console.log(data)
        return getFileByPath("./files/3.txt")
    })

    .then(function(data){
        console.log(data)
    })


    //catch（）作用：如果前面有 Promise() 执行失败，
    //则立即终止Promise()的执行，并且立即执行cathch()程序
    .catch(function(err){
        console.log('需求2--终止出错之后的程序：'+err.message)
    })




